משימה שמורכבת משני חלקים:
1. יש קובץ דאטה וקובץ קונפיגורציה. צריך לאתר מידה בדאטה ולראות האם הוא תואם לקונפיגורציה. שפה נדרשת : פייתון
2. לאחר שבונים את הסקריפט בפייתון, צריך לכתוב bash script שיריץ את הסקריפט של הפייתון על קבצים, כאשר נתון רק תיקיית שורש ואז רקוסיבית על כל התיקויות והקבצים שתחתיה
להכל היה שעתיים
שיחה טלפונית , אחריו ראיון דרך המחשב באורך של שעתיים
שאלות מתוך הראיון
הסבר של כ20 דק על המשרה (כתיבת אלגוריתמים embedded)+ הסבר על המרואיין
שאלות:
נתן קוד בCPP האובייקט מקבל תמונה (מטריצה) אורך ורחב ממיר את התמונה למערך, וממש אופרטור () שניגש לתמונה עם הממורת למערך
1. מה עושה הפונקצייה של אופרטור () עבור img(x,y)-מחזיר את ערך הפיקסל בoffset של (x+y)*w
2. ישנו for בתוך for, מה יקרה אם נהפוך את הסדר בין שתי הלולאות (כלומר הראשונה תהפוך להיות תת ללואה של השינה) - הערך שיוחזר יהיה זהה
3. האם זה יהיה יותר יעיל?
המשך של הראיון היה לכתוב פסדו-קוד
ישנו מערך של 200 תאים צריך לממש פונקציית malloc ו free
מדובר במשרת סטודנט, זומנתי לראיון טכני של שעה וחציה, הסבירו לי על התפקיד, שאלו אותי 2 שאלות מקצועיות.
שאלות מתוך הראיון
שאלה בתכנות:
בהינתן מערך, צור מערך אשר בכל אינדקס i מכיל את מכפלת כל האיברים במערך הנתון מלבד האיבר ה-i בו.
דוג' נתון [1,2,3,4] התוצאה תהיה: [24,12,8,6]
שאלה נוספת בחומרה: נתון רכיב אשר מקבל כניסה של 8 סיביות ויציאה של 3 סיביות, המוצא מסמל את האינדקס של האיבר הראשון שיש בו 1.
שאלה 1: מה הכשל הלוגי בתכנון? תשובה: עבור כניסה של אפסים בלבד, לא מוגד מה יהיה המוצא. דרך תיקון: הוספת יציאה שמסמסלת על כך.
שאלה 2: ממש בעזרת הרכיב, רכיב זהה שמקבל 16 סיביות.
התקשרו, שלחו מבחן קוד כמטלת בית עם 3 שאלות במערכת codility. הקודים היו אמורים להיכתב בשפת Python.
שאלות מתוך הראיון
1. קוד ההופך סטרינג של מספרים בצורה כזו: אם יש את הסטרינג 123456 אז הקוד צריך להפוך אותו ל-162534
2. מקבלים 4 ספרות, כמה צריפופים אפשריים אפשר לעשות מ4 הספרות הללו שהגיוניות בשעון דיגיטלי, למשל מכניסים את הספרות 8512 אז צירוף אפשרי לדוגמא הוא 1258 שכן קיימת שעה 12:58 ולעומת זאת ציוף לא הגיוני הוא 1285 שכן 12:5 לא הגיוני בשעון.
3. נתון סטרינג שכאילו מגדיר כמו טבלה (ירידת שורות ע"י \n) וצריך להשמיט שורות בהם יש את הערך NULL.